# 使用进程池Pool 创建进程

from multiprocessing import Pool
import os, time


def subThread(param1):
    print("子进程 ", os.getpid(), param1)
    time.sleep(3)  # 休眠1s


if __name__ == "__main__":
    print("父进程开始， pid:", os.getpid())
    p = Pool(3)
    for i in range(10):
        # p.apply(subThread, args=("苹果", "樱桃"))  # 阻塞方式调用函数
        p.apply_async(subThread, args=(i,))  # 非阻塞方式调用函数
    p.close()
    p.join()
    print("父进程结束， pid：", os.getpid())
